home *** CD-ROM | disk | FTP | other *** search
/ Libris Britannia 4 / science library(b).zip / science library(b) / PROGRAMM / PASCAL / 0187.ZIP / CRIBBAGE.PS2 < prev    next >
Text File  |  1985-01-20  |  1KB  |  65 lines

  1. { Included File: CARD.INC }
  2.  
  3. procedure makedeck;
  4. var
  5.   cardnum: 0..decksize;
  6.   rank: ranktype;
  7.   suit: suitype;
  8. begin
  9.   cardnum:=0;
  10.   for suit:=hearts to spades do
  11.     for rank:=1 to ranksize do
  12.       begin
  13.         cardnum:=cardnum+1;
  14.         deck[cardnum].rank:=rank;
  15.         deck[cardnum].suit:=suit
  16.       end
  17. end;  {makedeck}
  18.  
  19. procedure shuffle;
  20. var
  21.   curcard, newcard: 1..decksize;
  22.   tmp: card;
  23. begin
  24.   for curcard:=1 to decksize do
  25.     begin
  26.       newcard:=random(decksize)+1;
  27.       tmp:=deck[newcard];
  28.       deck[newcard]:=deck[curcard];
  29.       deck[curcard]:=tmp
  30.     end
  31. end;  {shuffle}
  32.  
  33. procedure deal;
  34. var
  35.   i: 1..dealsize;
  36. begin
  37.   common.rank:=0;
  38.   for i:=1 to dealsize do
  39.     begin
  40.       human[i]:=deck[i];
  41.       comp[i]:=deck[i+dealsize]
  42.     end
  43. end;  {deal}
  44.  
  45. procedure showcard(toshow: card);
  46. begin
  47.   case toshow.rank of
  48.     1: write('A');
  49.     2,3,4,5,6,7,8,9: write(toshow.rank:1);
  50.     10: write('T');
  51.     11: write('J');
  52.     12: write('Q');
  53.     13: write('K')
  54.     end;  {case}
  55.   case toshow.suit of
  56.     hearts: write('H');
  57.     clubs: write('C');
  58.     diamonds: write('D');
  59.     spades: write('S')
  60.     end;  {suit}
  61.   write(' ')
  62. end;  {showcard}
  63.  
  64. { End of included file }
  65.